package com.fuze.service;

import com.fuze.domain.dto.ContractQueryDTO;
import com.fuze.domain.dto.DataGridView;
import com.fuze.domain.dto.ServiceFeeContractDTO;
import com.fuze.domain.model.ServiceFeeContract;

import java.util.List;

/**
 * @author sepc_
 * @date 5/19/2021 14:38
 * 服务费用方式的合同的业务接口
 */
public interface ServiceFeeContractService {


    /**
     * 根据合同的类型分页查询合同
     *
     * @param queryDTO 合同的类型以及分页条件的封装
     * @return 查询到的结果
     */
    DataGridView queryByType(ContractQueryDTO queryDTO);

    /**
     * 根据id查询服务费用方式的合同
     *
     * @param id id
     * @return 查询结果
     */
    ServiceFeeContract findById(Integer id);

    /**
     * 新增服务费用方式的合同
     *
     * @param serviceFeeContractDTO 数据
     * @return 新增条数
     */
    int add(ServiceFeeContractDTO serviceFeeContractDTO);

    /**
     * 更新
     *
     * @param serviceFeeContractDTO 服务费用方式的合同数据
     * @return 更新的数据量
     */
    int update(ServiceFeeContractDTO serviceFeeContractDTO);

    /**
     * 根据ids删除合同
     *
     * @param ids 需要删除的id
     * @return 删除的数据量
     */
    int delete(Integer[] ids);
}
